package me.zhengjie.modules.system.service

import jakarta.servlet.http.HttpServletResponse
import me.zhengjie.common.utils.PageResult
import me.zhengjie.modules.system.domain.*
import me.zhengjie.modules.system.service.dto.*
import org.springframework.data.domain.Pageable
import java.io.IOException

/**
 * @author Kuki Wu
 * @date 2019-03-29
 */
interface JobService {
    fun findById(id: Long): JobDTO?
    fun create(resources: Job): JobDTO?
    fun update(resources: Job)
    fun delete(id: Long)
    fun queryAll(criteria: JobQueryCriteria, pageable: Pageable?): PageResult<JobDTO?>?
    fun queryAll(criteria: JobQueryCriteria): List<JobDTO>

    @Throws(IOException::class)
    fun download(queryAll: List<JobDTO>, response: HttpServletResponse?)
}